perm filename PASS1.SAI[PUB,TES]2 blob
sn#146879 filedate 1975-02-19 generic text, type T, neo UTF8
00100 BEGIN "PASS1"
00200
00300 DEFINE CLANCOMPILEFILE = "PASS1" ;
00400
00500 REQUIRE "ABC" LOAD!MODULE ;
00600 REQUIRE "DEF" LOAD!MODULE ;
00700 REQUIRE "PQR" LOAD!MODULE ;
00800 REQUIRE "STUVX" LOAD!MODULE ;
00900
01000 DEFINE TERNAL = "INTERNAL", PRELOAD = "PRELOAD!WITH" ;
01100
01200 REQUIRE "SHARE" SOURCE!FILE ;
01300
01400 IFC TENEX THENC
01500 REQUIRE 30000 STRING!SPACE ;
01600 REQUIRE 2500 SYSTEM!PDL ;
01700 REQUIRE 2500 STRING!PDL ;
01800 ELSEC IFC ITSVER THENC
01900 REQUIRE 10000 STRING!SPACE ;
02000 ELSEC
02100 REQUIRE 4000 STRING!SPACE ;
02200 ENDC
02300 IFC CMUVER THENC
02400 REQUIRE 650 SYSTEM!PDL;
02500 REQUIRE 400 STRING!PDL;
02600 ELSEC
02700 REQUIRE 400 SYSTEM!PDL;
02800 REQUIRE 200 STRING!PDL;
02900 ENDC
03000 ENDC
03100
03200 COMMENT
03300
03400 *** Variations at Different Sites ***
03500
03600 The default DEVICE differs among sites. TENEX systems have a special
03700 startup call.
03800
03900 ***
04000
04100
04200 This module is the Main Program, i.e., it has a starting address,
04300 performs initialization and finalization. The operative staement is
04400 the call on MANUSCRIPT.
04500
04600 ;
04700
04800 SYMNO ← REGULAR!SIZE - 1 ; COMMENT Assume for now that symbol table is regular size;
04900 INPGS ← 0 ; INFILE ← NULL ; PREFMODE ← 1 ; DELINT ← "Y" ;
05000 DEVICE ← IFC PARCVER THENC TTY ELSEC LPT ENDC ;
05100
05200 IFC TENEX THENC
05300 TENEXSTART ;
05400 ELSEC
05500 IF RPGSW THEN RPGSTART ELSE SSTART; COMMENT Read file names and options;
05600 ENDC
05700
05800 INITSIZES ;
05900
06000 COMMENT INITIALIZATION PROCEDURE CALLS ;
06100
06200 ALGOL! ;
06300 FILLR! ;
06400 FONTS! ;
06500 USERS! ;
06600 DATUM! ;
06700 TOKEN! ;
06800 PASTE! ;
06900 COMMD! ;
07000 AREAS! ;
07100 BLOCK! ;
07200 CTRLC! ;
07300 PORTS! ;
07400 VARBL! ;
07500 XREFS! ;
07600 TEMPL! ;
07700 CNTRS! ;
07800 RESPS! ;
07900 VERTI! ;
08000 QUADS! ;
08100 FILES! ;
08200 ERROR! ;
08300 SORCE! ;
08400
08500 COMMENT THE COMPILATION ;
08600
08700 MANUSCRIPT ;
08800
08900 COMMENT FINALIZATION ;
09000
09100 FINIXREFS ;
09200 FINIPAGES ;
09300 FINIFILES ;
09400
09500 INTERMEDIATEFILES ;
09600
09700 FINIDATUM ;
09800
09900 RUNPASS2 ;
10000
10100 CLANFINISHED
10200
10300 END "PASS1" ;